    #define LINHAMAX 66
     #define SPACELINE 1

     /***** YYSCAN ******/

     #define ENDFILE EOF
     #define NEWLINE 13
     #define HTAB 9
     #define LINEFEED 10
     #define CTLZ 26
     #define BACKSPACE 8
     #define VT 11
     #define FF 12
     #define TLE 72


     int errofatal;  /* Variavel para indicar um erro fatal */
	 FILE *FONTE;

	 /*YYSCAN*/

	 int ii;
	 int ctx;
	 alfa key[12];
	 int tipo_pal_res[12];

	 /***** GETCHAR ******/

	 char ch;
	 int ll,cc;
	 char linha[TLE + 1];
	 int pagina;
	 int linenum;
	 int pagcomp;
	 int marginf;
	 int margem;
	 int margsup1;
	 int margsup2;
	 int margsup;

void MONTATABELAS(void)
{
  /* tabela de palavras reservadas */
  strcpy(key[1]," begin        ");
  strcpy(key[2]," boolean       ");
  strcpy(key[3]," do         ");
  strcpy(key[4]," else       ");
  strcpy(key[5]," end         ");
  strcpy(key[6]," if        ");
  strcpy(key[7]," integer      ");
  strcpy(key[8]," procedure ");
  strcpy(key[9]," program        ");
  strcpy(key[10]," then         ");
  strcpy(key[11]," while         ");
//  tipo_pal_res[1] = xbegin;
//  tipo_pal_res[2] = xboolean;
//  tipo_pal_res[3] = xdo;
//  tipo_pal_res[4] = xelse;
//  tipo_pal_res[5] = xend;
//  tipo_pal_res[6] = xif;
//  tipo_pal_res[7] = xinteger;
//  tipo_pal_res[8] = xprocedure;
//  tipo_pal_res[9] = xprogram;
//  tipo_pal_res[10] = xthen;
//  tipo_pal_res[11] = xwhile;
} /* MONTATABELAS */

void INICIA(void)
     {
       ch = ' ';
       ll = 0;  cc = 0;
       pagina  = 0;
       linenum = 0;
       pagcomp = LINHAMAX;
       margem  = 4;
       margsup1 = 2;
       margsup2 = 2;
       margsup = margsup1 + margsup2 + 3;
       marginf = pagcomp - margem;
       ctx     = 1;
       l       = 1;
       strcpy(ts[1].nome,"               ");
       ts[1].nivel   = 1;
       ts[1].classe  = NAO_DECL;
       ts[1].tipotam = INTEIRO;
       ts[1].endoff  = 0;
       for (ii = 1; ii <= 1000; ii++)
           ts[ii].col = 0;
       for (ii = 0; ii <= 90;ii++)
           thash[ii] = 0;
       MONTATABELAS();
       temps = -1;
       nivel = 0;
       ABLOCO();
     } /* INICIA */


